L15&16 - System Testing

Behavioral Insights
	- input/ouput of test visible at system boundry

- Objective --> asses weather system does what intended to do
- Basis --> behavioral/functional specification

ATOMIC SYSTEM FUNCTIONS
	- action observable at system level (input/output)

- Thread
	- path of source ASF to sink ASF
	- unified view of testing
		- unit testing
		- integration testing
		- system testing --> interaction among ASFs

- Basic Concepts
	- data, event, action, device, thread

FIDING THREADS
- finite state machine
	- follow path transition, note inputs/ouputs
- Action-Centric
	- actions have inputs/ouputs
	- action can be decomposed into lower level actions
- Device-Centric
	- every system has ports
		- source/destination of input/outputs
		- ports = where I/O happens

STRUCTURAL STRATEGIES
- bottom-up --> when sate machine organized in hierarchy

FUNCTIONAL STRATEGIES
1. identify I/O port events
2. identify trial set of ASFs
3. concatenate ASFs
4. discard redundant threads

- Event-Based Coverage
	1. each port input event occurs
	2. common threads
	3. data context
	4. all innapropriate inputs
	5. All possible inputs

- Port-Based Thread
	- determine what event can occur at each port
	- find threads that use I/O ports

- Data-Based
	- for static system
	- where no event or behavior
	- ER Models & databases
